1. Field of the Invention
This invention relates in general to the determination of system configuration in a microprocessor-based system, and more particularly to a method and apparatus for identifying a version of an electronic assembly using a unique embedded identification signature for each different version.
2. Description of Related Art
The microprocessor industry has experienced tremendous growth over the last twenty years. From the days of its infancy, the microprocessor has now evolved into a powerful business and personal tool found on virtually every office desk and in virtually every home. Moreover, devices with the computing power that would be the envy of large computing systems decades ago are now found in devices ranging from personal digital assistants and gaming consoles to printers and network routers.
The number of areas where microprocessors are being utilized is growing dramatically. The areas are varied, and as a result, have different requirements for the various subsystems forming a complete computer system. For example, personal computers used primarily for word processing have relatively modest requirements for installed memory and processor subsystems, have very high performance requirements for the mass storage subsystem and have varying requirements for the display subsystem, depending on the exact application, such as high resolution desktop publishing or simpler letter production, being performed. A data storage and retrieval oriented system needs larger amounts of memory, a faster processor, may have lesser mass storage requirements and generally has minimal display requirements.
One early idea to enhance microprocessor systems was the addition of hardware enhancing boards. These boards were generally plugged into a system bus to provide added functionality, such as telecommunications, disk storage, and improved video. Higher chip complexity beget more complex printed circuit boards. Because of production volume requirements and the reduced costs as volumes increase, it is desirable that as many common features as possible are combined into high volume boards. This has happened in the personal computer, printer, copier and other office equipment area by developing basic units of varying processor performance levels, with the other subsystems incorporated by the inclusion of interchangeable modules.
Modules of the desired performance level are incorporated into the basic unit to tailor the basic processor unit to the desired complete system. Because of the inherent flexibility of this design approach, it becomes difficult to develop a single piece of software to control the system. Moreover, the software cannot depend on a given configuration being present and so arrangements must be made to allow the software to understand the specific configuration. Additionally, the provisions must be made so the various modules forming the subsystems do not interfere with each other.
In addition, a new version (production level) of an electronic board, such as a mother board, embedded controller, etc., often needs a unique computer code level because a new feature or different hardware implementation is created. However, all the board versions must be supported, but only one level of the code is desired to reduce the maintenance cost. Being able to sense the version of the board enables the code to automatically deal with the hardware differences specific to the version of the board. Also, problems with a particular version of the board can be uniquely treated by the instruction code based on that version ID.
It can be seen then that there is a need for a method and apparatus that provides version identification for an electronic board that is very cost effective and simple.
To overcome the limitations in the prior art described above, and to overcome other limitations that will become apparent upon reading and understanding the present specification, the present invention discloses a method and apparatus for identifying a version of an electronic assembly using a unique embedded identification signature for each different version.
The present invention solves the above-described problems by providing a unique instruction code loaded on each type or version of a board. The board ID solution allows common instruction code over a family (different types) and versions (revisions) of a board. Allowing common code is much less cost to maintain and takes very little board space.
A method in accordance with the principles of the present invention includes selecting a predetermined address reserved for a unique embedded identification signature representing a version for the electronic assembly, returning a binary coded signal provided by passive resistors configured to provide an indication of the version of the electronic assembly and configuring a processor according to the version for the electronic assembly indicated by the binary encoded signal.
Other embodiments of a method in accordance with the principles of the invention may include alternative or optional additional aspects. One such aspect of the present invention is that returning of the binary code indicating a version includes returning a first set of bits indicating a machine type for the electronic assembly and returning a second set of bits indicating a revision indication for the electronic assembly.
Another embodiment of the present invention includes an apparatus for identifying a version of an electronic assembly. The apparatus includes a data bus having a reserved bus address and a circuit arrangement, coupled to the data bus, for providing a binary coded signal indicating a of the version of the electronic assembly for configuring a processor according to the version for the electronic assembly indicated by the binary coded signal.
Another aspect of the present invention is that the circuit arrangement comprises a plurality of passive resistors selected and configured to generate the binary coded signal indicating the version of the electronic assembly.
Another aspect of the present invention is that the data bus comprises a bus having no other device thereon that can be selected to drive the bus.
Another aspect of the present invention is that the version indicated by the binary coded signal comprises a first set of bits indicating a machine type for the electronic assembly and a second set of bits indicating a revision indication for the electronic assembly.
Another embodiment of the present invention includes a system. The system includes a processor and at least one electronic assembly, coupled to the processor via a data bus, the at least one electronic assembly providing predetermined functionality to the system under control of the processor, wherein the at least one electronic assembly further includes a data bus having a reserved bus address and a circuit arrangement, coupled to the data bus, for providing a binary coded signal indicating a version of the at least one electronic assembly for configuring a processor according to the version for the at least one electronic assembly indicated by the binary coded signal.
Another aspect of the present invention is that the circuit arrangement comprises a plurality of passive resistors selected and configured to generate the binary coded signal indicating the version of the at least one electronic assembly.
Another aspect of the present invention is that the data bus comprises a bus having no other device thereon that can be selected to drive the bus.
Another aspect of the present invention is that the version indicated by the binary coded signal comprises a first set of bits indicating a machine type for the at least one electronic assembly and a second set of bits indicating a revision indication for the at least one electronic assembly.
Another aspect of the present invention is that the at least one electronic assembly comprises a plurality of electronic assemblies, each of the plurality of electronic assemblies providing a version indicated by a binary coded signal from each of the plurality of electronic assemblies.
These and various other advantages and features of novelty which characterize the invention are pointed out with particularity in the claims annexed hereto and form a part hereof. However, for a better understanding of the invention, its advantages, and the objects obtained by its use, reference should be made to the drawings which form a further part hereof, and to accompanying descriptive matter, in which there are illustrated and described specific examples of an apparatus in accordance with the invention.